package com.wn.bean;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("tbl_user")  //指定 table的name
public class User {

    //IdType.AUTO  根据数据库 进行自曾
    @TableId(type = IdType.AUTO)
    private Long id;  //注：id是long类型

    private String name;

    @TableField("pwd")  //指定表中字段名字，底层就是定义了别名
    private String password;

    private Integer age;

    @TableField(select = false)  //这一列不参与查询
    private String tel;

    //表中没有的列
    @TableField(exist = false)  //这一列不参与查询
    private Integer online;

    @TableLogic(delval = "1", value = "0")  //这是一个逻辑删除的字段
    private Integer deleted;

    @Version  //这个字段用于版本控制
    private Integer version;

    @TableField(fill = FieldFill.INSERT)  //在插入操作的时候填充
    private Date createTime;  //创建时间
    @TableField(fill = FieldFill.INSERT_UPDATE)  //在插入和更新时填充
    private Date updateTime;  //更新时间

}